package com.mine.photohandler.util;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;

public class Bimp {
	public static AlbumHelper helper;
	public static ArrayList<ImageItem> tempSelectBitmap = new ArrayList<>();   //选择的图片的临时列表

//	public static Bitmap bimap ;

	public static Bitmap revitionImageSize(String path) throws IOException {
		BufferedInputStream in = new BufferedInputStream(new FileInputStream(
				new File(path)));

		BitmapFactory.Options options = new BitmapFactory.Options();
		options.inJustDecodeBounds = true;
		BitmapFactory.decodeStream(in, null, options);
		in.close();
		int i = 0;
		Bitmap bitmap = null;
		while (true) {
			if ((options.outWidth >> i <= 1000)
					&& (options.outHeight >> i <= 1000)) {
				in = new BufferedInputStream(
						new FileInputStream(new File(path)));
				options.inSampleSize = (int) Math.pow(2.0D, i);
				options.inJustDecodeBounds = false;
				bitmap = BitmapFactory.decodeStream(in, null, options);
				break;
			}
			i += 1;
		}

		return bitmap;
	}

	/**
	 * 关闭框架
	 */
	public static void close(){
		if (tempSelectBitmap != null && tempSelectBitmap.size()>0){
			tempSelectBitmap = null;
		}
//		if (bimap != null){
//			bimap.recycle();
//		}
		if (helper != null){
			helper = null;
		}
	}

	/**
	 * 初始化框架
	 * @param context
	 * @param max
	 */
	public static void init(Context context,int max){
		tempSelectBitmap = new ArrayList<>();
//		bimap = BitmapFactory.decodeResource(context.getResources(), R.drawable.icon_addpic_unfocused);
		helper = AlbumHelper.getHelper();
		helper.init(context.getApplicationContext());
		PublicWay.num = max;
	}
}
